#pragma once
#include <list>
#include "Entity.h"
#include "GameMode.h"
#include "GamePlayer.h"
#include "TaskManager.h"
#include "BufferManager.h"

class CSceneManager
{
public:
	CSceneManager();
	virtual ~CSceneManager();
	void initialise(int gameMode);
	void destory();
	void addEntity(mini::CEntity* pEntity);
	void removeEntity(mini::CEntity* pEntity);
	void run();

private:
	std::list<mini::CEntity*>	mEntities;
	CGameMode*		mpGameMode = nullptr;
	CGamePlayer*	mpControlPlayer = nullptr;
	CTaskManager	mTaskManager;
	CBufManager		mBuffManager;
	
};